package com.translate.web.param;

import java.util.List;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.Pattern;

import com.param.impl.PageParam;
import com.translate.web.constant.ValidateCondtionAndMessage;
import com.translate.web.param.contract.IPayManagerSearchParam;

/**
 * 支付管理搜索
 */
public class PayManagerSearchParam extends PageParam implements IPayManagerSearchParam {// 订单标识

	/**
	 * 订单标识
	 */
	@Pattern(regexp = ValidateCondtionAndMessage.ENGLISH_OR_NUMBER, message = ValidateCondtionAndMessage.ENGLISH_OR_NUMBER_MSG)
	private String orderSnId;

	@Pattern(regexp = ValidateCondtionAndMessage.CHINESE_ENGLISH_NUMBER_UNDERLINE_BY_SERIESDESCRIPTION, message = ValidateCondtionAndMessage.CHINESE_ENGLISH_NUMBER_UNDERLINE_BY_SERIESDESCRIPTION_MSG)
	private String userName;

	/**
	 * 服务类型
	 */
	@Pattern(regexp = ValidateCondtionAndMessage.CHINESE_ENGLISH_NUMBER_UNDERLINE_BY_SERIESDESCRIPTION, message = ValidateCondtionAndMessage.CHINESE_ENGLISH_NUMBER_UNDERLINE_BY_SERIESDESCRIPTION_MSG)
	private String serviceNames;

	/**
	 * 
	 * 支付方式
	 */
	@Min(value = ValidateCondtionAndMessage.MIN_ID, message = ValidateCondtionAndMessage.MIN_ID_MSG)
	private Byte payType;

	/**
	 * 开票状态
	 */
	@Min(value = ValidateCondtionAndMessage.MIN_STATUS, message = ValidateCondtionAndMessage.MIN_SIZE_MSG)
	@Max(value = 3, message = "开票状态最大值为3")
	private Byte invoice;

	/**
	 * 支付状态状态
	 */
	@Min(value = ValidateCondtionAndMessage.MIN_STATUS, message = ValidateCondtionAndMessage.MIN_SIZE_MSG)
	@Max(value = 2, message = "支付状态状态 最大值为2")
	private Byte orderStatus;

	/**
	 * 开始时间
	 */
	@Min(value = ValidateCondtionAndMessage.MIN_CREATE_TIME, message = ValidateCondtionAndMessage.CREATE_TIME_BY_MSG)
	private Long startTime;

	/**
	 * 结束时间
	 */
	@Min(value = ValidateCondtionAndMessage.MIN_CREATE_TIME, message = ValidateCondtionAndMessage.CREATE_TIME_BY_MSG)
	private Long endTime;

	private int teamId = -1;

	@Min(value = ValidateCondtionAndMessage.MIN_ID, message = ValidateCondtionAndMessage.MIN_ID_MSG)
	private Integer userId;

	private List<Integer> userIds;

	/**
	 * -1 找不到 0 找到了
	 */
	private int userFound = -1;

	public Integer getUserId() {
		return userId;
	}

	public void setUserId(Integer userId) {
		this.userId = userId;
	}

	public Long getStartTime() {
		return startTime;
	}

	public void setStartTime(Long startTime) {
		this.startTime = startTime;
	}

	public Long getEndTime() {
		return endTime;
	}

	public void setEndTime(Long endTime) {
		this.endTime = endTime;
	}

	public String getOrderSnId() {
		return orderSnId;
	}

	public void setOrderSnId(String orderSnId) {
		this.orderSnId = orderSnId;
	}

	public String getServiceNames() {
		return serviceNames;
	}

	public void setServiceNames(String serviceNames) {
		this.serviceNames = serviceNames;
	}

	public Byte getPayType() {
		return payType;
	}

	public void setPayType(Byte payType) {
		this.payType = payType;
	}

	public Byte getInvoice() {
		return invoice;
	}

	public void setInvoice(Byte invoice) {
		this.invoice = invoice;
	}

	public Byte getOrderStatus() {
		return orderStatus;
	}

	public void setOrderStatus(Byte orderStatus) {
		this.orderStatus = orderStatus;
	}

	public int getTeamId() {
		return teamId;
	}

	public void setTeamId(int teamId) {
		this.teamId = teamId;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public List<Integer> getUserIds() {
		return userIds;
	}

	public void setUserIds(List<Integer> userIds) {
		this.userIds = userIds;
	}

	public int getUserFound() {
		return userFound;
	}

	public void setUserFound(int userFound) {
		this.userFound = userFound;
	}

}